/**
 * This file/module contains all configuration for gulp build process
 * @Author: jiangcheng198745@hotmail.com
 * Date: 2016/07/25
 */

const build = 'build';
const dist = 'dist';
const app = 'app';
const appModules = 'app/modules';
const test = 'test';
const cache = '.cache';
const e2e = test + 'e2e-protractor';
const node_modules = 'node_modules';
const gulpFiles = 'gulp/**/*.js';

const config = {
    build: build,
    dist: dist,
    vendor: node_modules,
    app: 'app',
    entries: 'Router.react.jsx',
    distEntry: 'app.js',
    extensions: '.jsx',
    cssName: 'main',
    css: 'styles',
    jsIndexName: 'index.script',
    gulpFiles: gulpFiles,
    images: 'images',
    font: 'font',

    appFiles: {
        js: [
            app + '/components/**/*.js',
            app + '/modules/**/*.js',
            app + '/scripts/**/*.js',
            app + '/*.js'
        ],
        jsx: [
            app + '/components/**/*.jsx',
            app + '/modules/**/*.jsx',
            app + '/scripts/**/*.jsx',
            app + '/*.jsx'
        ],
        notSepc: [
            '!' + app + '/components/**/*.spec.js',
            '!' + app + '/modules/**/*.spec.js',
            '!' + app + '/scripts/**/*..sepc.js',
            '!' + app + '/*.spec.js'
        ],
        json: app + '/**/*.json',
        tpl: app + '/module/**/*.tpl.html',
        html: app + '/**/*.html',
        scss: app + '/**/*.css',
        images: app + '/images',
        font: app + '/font'
    },
    vendorFiles: {
        js: [
            node_modules + '/jquery/dist/jquery.js',
            node_modules + '/fastclick/fastclick.js',
            node_modules + '/swiper/swiper.min.js',
            node_modules + '/lazyload/jquery.lazyload.js',
            node_modules + '/layer/layer.js',
            node_modules + '/drop/dropload.min.js',
            node_modules + '/selectCity/jquery.citys.js'
        ],
        css: [
            node_modules + '/layer/need/layer.css',
            //node_modules + '/jquery-mobile/jquery.mobile-1.4.5.min.css',
            node_modules + '/drop/dropload.css'
        ]
    },
    testFiles: {
        spec: {
            all:  app + '/**/*.spec.js'
        }
    }
};

module.exports = config;
